import type { AppRouteRecordRaw } from '/@/router/types';
import { t } from '/@/hooks/web/useI18n';
import {
    REDIRECT_NAME,
    LAYOUT,
    EXCEPTION_COMPONENT,
    PAGE_NOT_FOUND_NAME,
} from '/@/router/constant';

// 404 on a page
export const PAGE_NOT_FOUND_ROUTE: AppRouteRecordRaw = {
    path: '/:path(.*)*',
    name: PAGE_NOT_FOUND_NAME,
    component: LAYOUT,
    meta: {
        title: 'ErrorPage',
        hideBreadcrumb: true,
        hideMenu: true,
    },
    children: [
        {
            path: '/:path(.*)*',
            name: PAGE_NOT_FOUND_NAME,
            component: EXCEPTION_COMPONENT,
            meta: {
                title: 'ErrorPage',
                hideBreadcrumb: true,
                hideMenu: true,
            },
        },
    ],
};

export const REDIRECT_ROUTE: AppRouteRecordRaw = {
    path: '/redirect',
    name: REDIRECT_NAME,
    component: LAYOUT,
    meta: {
        title: REDIRECT_NAME,
        hideBreadcrumb: true,
        hideMenu: true,
    },
    children: [
        {
            path: '/redirect/:path(.*)',
            name: REDIRECT_NAME,
            component: () => import('/@/views/sys/redirect/index.vue'),
            meta: {
                title: REDIRECT_NAME,
                hideBreadcrumb: true,
            },
        },
    ],
};

export const ERROR_LOG_ROUTE: AppRouteRecordRaw = {
    path: '/error-log',
    name: 'ErrorLog',
    component: LAYOUT,
    meta: {
        title: 'ErrorLog',
        hideBreadcrumb: true,
    },
    children: [
        {
            path: 'list',
            name: 'ErrorLogList',
            component: () => import('/@/views/sys/error-log/index.vue'),
            meta: {
                // title: t('routes.basic.errorLogList'),
                title: '错误页',
                hideBreadcrumb: true,
            },
        },
    ],
};
